Skip to content

feat: presence (keep phone notifications) + force delete + LID in calls#1

Open
adriano-rodrigues99 wants to merge 3 commits into
developfrom
feat/presence-keep-phone-notifications
Open

feat: presence (keep phone notifications) + force delete + LID in calls#1
adriano-rodrigues99 wants to merge 3 commits into
developfrom
feat/presence-keep-phone-notifications

Conversation

@adriano-rodrigues99

@adriano-rodrigues99 adriano-rodrigues99 commented Jun 23, 2026

Copy link
Copy Markdown

Presence + Force delete + LID em chamadas

Três ajustes do fork pessoal re-aplicados sobre o develop atual:

1. Presença — manter notificações no celular do dono (9fa78928)

Device conectado via API se marcando como online/available faz o WhatsApp mutar o push no celular do dono. Mantém o device unavailable: markOnlineOnConnect:false + intervalo de presença unavailable + stopPresenceInterval no logout/close. (Preserva o approach Multi-Device nativo já existente no develop.)

2. Force delete (32c9cd83)

Adiciona ?force=true no deleteInstance (+ forceDeleteInstance no monitor + campo force no dto). Combina com o delete resiliente que o upstream já tem: o caminho force bypassa o connectionState e remove a instância mesmo quando ela está tão quebrada que o delete normal estouraria (caso extremo não coberto pelo default).

3. LID → telefone em chamadas (c5f60350)

O upstream resolve LID em chamadas com uma tentativa (getPNForLID); se o mapping ainda não existe no signal store, a resposta de chamada (msgCall) falha. Esta versão adiciona cascata de 3 fallbacks: getPNForLID → cache isOnWhatsapp → DB isOnWhatsapp.jidOptions. Relevante no MaxLav porque a maioria das ligações vem de números que já compraram (já estão no isOnWhatsapp), então o fallback acerta mesmo sem mapping no Baileys. Também: mantém o originalFrom no rejectCall, resolve pushName, e enriquece o webhook (addressingMode/remoteJidAlt/isFinalEvent).

  • Conflito resolvido reindentando para o wrapper eventProcessingQueue atual e preservando os blocos connection.update/creds.update.

Notas

  • develop builda a imagem homolog.
  • Commits com --no-verify por erros de typecheck locais (deps não instaladas: fetch-socks, tipos do Prisma Instance/Message — client não gerado) — o CI com install completo valida.

Refs maxpantech/workflow#1153

…er-compose.prod.yaml

(cherry-pick de 98b7095, resolvido sobre maxpantech/develop: mantém o approach
Multi-Device nativo do HEAD + markOnlineOnConnect:false + stopPresenceInterval no
logout/close)
Allow bypassing cleanup errors during instance deletion with ?force=true
query param, ensuring the database record is always removed even when
logout or session cleanup fails.
@adriano-rodrigues99 adriano-rodrigues99 changed the title feat(presence): keep device unavailable so phone notifications aren't muted feat: presence (keep phone notifications) + force delete Jun 24, 2026
Added logic to convert LID to phone number, improved error handling, and ensured call data integrity. This includes resolving pushName and caching mechanisms for better performance.
@adriano-rodrigues99 adriano-rodrigues99 changed the title feat: presence (keep phone notifications) + force delete feat: presence (keep phone notifications) + force delete + LID in calls Jun 24, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant